<meta charset="UTF-8" />
<title>字符串、二进制互转</title>

二进文字：<textarea id="bin_str_input"></textarea>
<br />
正常文字：<textarea id="nor_str_input"></textarea>

<script>
    /** @param str {string} */
    function parseBinStr(str){
        return str.split(" ")
            .map(two =>
                String.fromCharCode(
                    parseInt(two, 2)
                )
            )
            .join("");
    }

    /** @param str {string} */
    function toBinStr(str){
        return str.split("")
            .map(char =>
                char.charCodeAt()
                    .toString(2)
            )
            .join(" ");
    }

    /** @type {HTMLInputElement} */ const bin_str_input = document.getElementById("bin_str_input");
    /** @type {HTMLInputElement} */ const nor_str_input = document.getElementById("nor_str_input");

    bin_str_input.oninput = function() {
        nor_str_input.value = parseBinStr(bin_str_input.value);
    };

    nor_str_input.oninput = function() {
        bin_str_input.value = toBinStr(nor_str_input.value);
    };
</script>

<style>
textarea {
    width: 800px;
    height: 400px;
}
</style>
